A conventional method for distributing software is to deliver the software as executable files. A developer uses one or more programming languages (e.g., Java) to write software source codes that form a program, compiles the software source codes (e.g., using a compiler) into one or more executable files, and distributes these executable files via the Internet (e.g., by prompting users to download), a storage medium (e.g., a DVD disk, or a flash storage drive), or other suitable media. Then, the users install these files onto their computer and execute them to run the program.
In many cases, an executable file that is to be delivered to the users is “statically” created, that is, pre-compiled in advance. As such, the same executable file is delivered to all users without any regard to their individual differences, and once installed by a particular user, the user often needs to “personalize” the installed file to suit his or her own use. For example, a typical action that the particular user needs to perform after (or perhaps during) the installation is to enter a login information, a serial code, and/or other identification or access information, so that the application may further suit the user's need.